XML 스키마
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
XML 스키마는 XML 문서의 구조와 유효성을 정의하고 검사하기 위한 언어를 통칭한다. 초기에는 DTD(문서 형식 정의)가 사용되었으나, XML 네임스페이스 지원 및 데이터 형식 정의의 한계로 인해 XML 스키마(XSD), RELAX NG, Schematron 등 다양한 스키마 언어가 개발되었다. DTD는 널리 지원되지만, XML 스키마는 네임스페이스 지원, 강력한 데이터 타입 정의, 상속 및 재사용 기능 등을 제공하며, RELAX NG는 간결한 문법, 강력한 패턴 매칭, 유연한 확장성을 특징으로 한다. Schematron은 규칙 기반으로 XML 파일의 구문을 정의하며, NRL(네임스페이스 라우팅 언어)은 스키마 언어는 아니지만 XML 문서 내 요소의 네임스페이스에 따라 개별 스키마로 연결하는 역할을 한다. 스키마 작성 시에는 일관성, 명확한 이름, 태그/속성 선택, 텍스트 내용 처리, 재사용성, 의미론적 고려 사항 등을 고려해야 한다.
더 읽어볼만한 페이지
- 데이터 모델링 언어 - 임베디드 SQL
임베디드 SQL은 호스트 프로그래밍 언어 내에 SQL 문을 삽입하여 데이터베이스와 상호 작용하는 기술로, 데이터베이스 액세스를 표준화하지만 보안 취약점과 이식성 저하의 단점도 가진다. - 데이터 모델링 언어 - 데이터 정의 언어
데이터 정의 언어(DDL)는 SQL에서 테이블, 열, 데이터 형식 등을 정의하고 데이터베이스 스키마를 수정하는 데 사용되는 명령어 집합이며, `CREATE`, `DROP`, `ALTER`, `TRUNCATE` 등의 명령어를 포함하고 데이터 구조를 정의하는 다양한 형식 언어들을 포괄하는 의미로도 사용된다. - XML - 오피스 오픈 XML
오피스 오픈 XML은 마이크로소프트에서 개발한 XML 기반의 파일 포맷으로, 문서, 스프레드시트, 프레젠테이션 등의 사무용 전자 문서를 표현하기 위해 사용되며 마이크로소프트 오피스 2007부터 기본 파일 형식으로 채택되어 ECMA 인터내셔널 및 ISO/IEC 국제 표준으로도 표준화되었다. - XML - 자원 기술 프레임워크
자원 기술 프레임워크(RDF)는 웹 상의 메타데이터를 표현하기 위한 표준 모델로, URI 기반의 리소스와 트리플 구조의 속성을 사용하여 정보 자원 간의 관계를 명확하게 기술하며, 시맨틱 웹 구축의 핵심 기술로서 다양한 분야에서 활용된다. - W3C 표준 - HTML
HTML은 웹 페이지 제작을 위한 표준 마크업 언어로서, 팀 버너스리가 제안하고 구현한 후 인터넷 발전과 함께 널리 사용되며, SGML에 기반하여 하이퍼텍스트 기능으로 다양한 콘텐츠를 표현하고 연결하며, W3C와 WHATWG에서 표준화를 진행하고 최신 버전은 HTML Living Standard이다. - W3C 표준 - 타임드 텍스트
타임드 텍스트는 영상이나 오디오 콘텐츠에 시간 정보를 담아 표현되는 텍스트로, 자막이나 캡션 등에 활용되며 TTML, WebVTT 등의 표준이 존재한다.
XML 스키마 |
---|
2. 역사적 배경
SGML에서 XML로 발전하면서 문서 구조를 정의하는 언어가 필요하게 되었다. XML 문서의 구조, 즉 어떤 요소가 다른 요소 안에 포함될 수 있는지, 특정 요소에 어떤 속성이 사용 가능한지 등을 정의하기 위해 스키마 언어가 필요하게 되었다. 스키마는 언어의 문법과 유사하며, 언어의 어휘를 정의하고 유효한 "문장"이 무엇인지 정의한다.[12]
XML 문서가 스키마를 준수하는지 확인하는 과정을 유효성 검사라고 하며, 이는 XML의 핵심 개념인 구문론적 정상 문서와는 별개이다. 모든 XML 문서는 정상적인 형식을 갖춰야 하지만, XML 파서가 "유효성 검사"를 수행하지 않는 한 문서가 유효할 필요는 없다. 유효성 검사를 하는 경우 문서는 관련 스키마와의 준수 여부도 확인된다. DTD 유효성 검사 파서가 가장 일반적이지만, 일부는 XML 스키마 또는 RELAX NG도 지원한다.
초기 스키마 언어로는 DTD가 SGML에서 XML로 이월되어 사용되었다. 그러나 DTD는 문법이 XML과 전혀 다르고, 요소의 데이터 형식을 정의할 수 없다는 한계가 있었다.
이러한 DTD의 한계로 인해 새로운 스키마 언어의 필요성이 대두되었고, XML 스키마나, RELAX, RELAX NG 등이 개발되었다.
3. 주요 스키마 언어
인스턴스 문서를 스키마에 대해 유효성 검사하는 것은 개념적으로 XML 파싱과는 별개의 작업으로 간주할 수 있다. 그러나 실제로 많은 스키마 유효성 검사기는 XML 파서와 통합되어 있다.
XML 스키마를 지정하는 데 사용할 수 있는 여러 가지 언어가 있으며, 각 언어는 장단점을 가지고 있다. 스키마 언어의 주된 목적은 XML 문서의 구조를 지정하는 것이다. 즉, 어떤 요소가 다른 요소 안에 포함될 수 있는지, 특정 요소에 어떤 속성이 사용 가능한지 등을 의미한다. 스키마는 언어의 문법과 유사하며, 언어의 어휘를 정의하고 유효한 "문장"이 무엇인지 정의한다.
과거와 현재의 XML 스키마 언어는 다음과 같다.언어 약어 버전 권한 XML의 제약 언어 CLiX 2005 독립[1] RDF 프레임워크의 XML에 대한 문서 내용 설명 기능[2] DCD v1.0 (1998) W3C (노트) 문서 정의 마크업 언어 DDML v0 (1999) W3C (노트) 문서 구조 설명 DSD 2002, 2005 BRICS (폐지) 문서 형식 정의 DTD 1986 (SGML) ISO[3] 2008 (XML) ISO/IEC[3] 네임스페이스 라우팅 언어 NRL 2003 독립[4] 네임스페이스 기반 유효성 검사 디스패칭 언어 NVDL 2006 ISO/IEC[5] 콘텐츠 조립 메커니즘 CAM 2007 OASIS XML 차세대 정규 언어 RELAX NG, RelaxNG 2001,[6] 간결 구문 (2002)[7] OASIS v1 (2003), v1 간결 구문 (2006), v2 (2008) ISO/IEC[5] 객체 지향 XML 스키마 SOX Schematron 2006, 2010, 2016, 2020 ISO/IEC[3] XML-데이터 축소 XDR ASN.1 XML 인코딩 규칙 XER XML 스키마 WXS, XSD 1.0 (2004), 1.1 (2012) W3C
주요 스키마 언어( ISO 19757의 승인된 언어 참조)로는 DTD, W3C XML 스키마, RELAX NG가 있으며, 각 언어는 고유한 장점과 단점을 가지고 있다.
Schematron은 XPath 기반 규칙 목록으로 XML 파일의 구문을 정의하는 규칙 기반 스키마 언어이다.
NRL은 스키마 언어가 아니며, 문서의 일부를 발견된 요소의 네임스페이스에 따라 개별 스키마로 안내하는 역할을 한다.
3. 1. 문서 형식 정의 (DTD)
문서 형식 정의(DTD)는 1986년(SGML)과 2008년(XML)에 각각 ISO[15]와 ISO/IEC[15]에 의해 표준화된 스키마 언어이다. XML 초기에 사용된 스키마 언어로, XML 네임스페이스를 지원하지 않고 데이터 타입 정의에 제한이 있다는 단점이 있지만, 널리 지원된다는 장점이 있다.
3. 1. 1. 도구 지원
DTD는 XML에 대해 가장 널리 지원되는 스키마 언어일 것이다. DTD는 XML 네임스페이스 지원조차 갖기 전에 정의된 XML의 가장 초창기 스키마 언어 중 하나이므로 널리 지원된다. 내부 DTD는 종종 XML 프로세서에서 지원된다. 외부 DTD는 덜 지원되지만, 그 차이는 크지 않다. 여러 XML 기술을 지원하는 대부분의 대형 XML 파서도 DTD를 지원한다.
3. 2. XML 스키마 (W3C)
W3C XML 스키마(WXS, XSD)는 2004년에 1.0 버전이, 2012년에 1.1 버전이 발표된 스키마 언어이다.[1] W3C에서 개발하였으며, XML 스키마라고도 불린다.
W3C XML 스키마는 문서 형식 정의(DTD)에 없는 여러 기능을 제공한다.
W3C XML 스키마는 XML 문서로 작성되어 편집 및 변환 도구를 사용할 수 있다는 장점이 있다. 또한, 유효성 검사 후 XML 인스턴스에 유형 정보(PSVI)를 추가하여 응용 프로그램에서 XML 인스턴스를 쉽게 조작할 수 있도록 돕는다.
RELAX NG와 비교했을 때, W3C XML 스키마는 다음과 같은 특징을 가진다.
하지만 W3C XML 스키마는 복잡하고 배우기 어렵다는 단점이 있다. 또한, XML로 작성되어 장황하며, 문서와 스키마를 연결하는 공식 메커니즘은 보안 문제를 야기할 수 있다. DTD의 일부 기능을 구현하지 않는다는 점도 단점으로 지적된다.
3. 2. 1. DTD 대비 장점
XSD 스키마는 일반적으로 XML 문서로 작성되므로 익숙한 편집 및 변환 도구를 사용할 수 있다.
XSD는 유효성 검사 외에도 XML 인스턴스에 유형 정보(스키마 유효성 검사 후 정보 세트(PSVI))를 주석으로 추가하여 응용 프로그램에서 XML 인스턴스를 더 쉽게 조작할 수 있도록 설계되었다. 이는 XSD 정의 유형을 Java와 같은 프로그래밍 언어의 유형에 매핑하거나("데이터 바인딩") XSLT 및 XQuery와 같은 XML 처리 언어의 유형 시스템을 풍부하게 함으로써 수행될 수 있다("스키마 인식").
3. 2. 2. RELAX NG와의 공통점
RELAX NG와 W3C XML 스키마는 비슷한 특수성 메커니즘을 허용한다. 둘 다 스키마를 여러 파일로 분할하는 것을 포함하여 언어의 모듈성을 확보할 수 있다. 또한 둘 다 XML 언어로 정의되어 있거나, 정의될 수 있다.
3. 2. 3. RELAX NG 대비 장점
PSVI와 유사한 기능을 제공한다. W3C XML 스키마는 XML 문서에 스키마를 연결하기 위한 공식적인 메커니즘을 가지고 있다.[8] W3C XML 스키마는 풍부한 "단순 타입" 시스템(xs:number, xs:date 등, 사용자 정의 타입 파생 포함)을 내장하고 있다.[8]
3. 2. 4. 단점
W3C XML 스키마는 복잡하고 배우기 어려운데, 이는 단순히 유효성 검사 이상의 작업을 시도하기 때문이다(PSVI 참조).[9]
XML로 작성된 것은 장점이지만, 어떤 면에서는 단점이기도 하다. 특히 W3C XML 스키마 언어는 매우 장황할 수 있지만, DTD는 간결하고 비교적 쉽게 편집할 수 있다.[9]
마찬가지로, 문서와 스키마를 연결하는 WXS의 공식적인 메커니즘은 잠재적인 보안 문제를 야기할 수 있다. 임의의 온라인 위치로의 URI를 따르는 WXS 유효성 검사기의 경우, 스트림 반대편에서 악성 코드를 읽을 가능성이 있다.[9]
W3C XML 스키마는 문서에 데이터 요소를 제공하는 DTD의 대부분 기능을 구현하지 않는다.[9]
W3C XML 스키마의 요소에 기본 속성을 추가하는 기능은 장점이지만, 어떤 면에서는 단점이기도 하다. 즉, 문서가 해당 스키마에 대해 유효성을 검사하더라도 스키마가 없으면 XML 파일을 사용할 수 없을 수 있다. 실제로, 이러한 XML 문서의 모든 사용자는 W3C XML 스키마 사양도 구현해야 하므로, 최소화되거나 구형 XML 파서를 사용할 수 없다. 또한 프로세서가 두 번째 XML 파일(스키마)을 다운로드하고 처리해야 하므로 문서 처리가 느려질 수 있다. 그러나 스키마는 일반적으로 캐시되므로 비용은 처음 사용할 때만 발생한다.[9]
3. 2. 5. 도구 지원
Xerces와 .NET Framework의 기본 클래스 라이브러리는 모두 WXS 유효성 검사 지원을 제공한다.[1]
3. 3. RELAX NG
RELAX NG(REgular LAnguage for XML Next Generation)는 XML 스키마의 대안으로 개발된 스키마 언어이다. 간결한 문법, 강력한 패턴 매칭, 유연한 확장성이 장점이지만, PSVI(Post-Schema-Validation Infoset)를 지원하지 않고 공식적인 스키마 연결 메커니즘이 없다는 단점이 있다.
언어 | 축약 | 버전 | 관련 기관 |
---|---|---|---|
RELAX NG | RELAX NG, RelaxNG | 2001,[18] Compact Syntax (2002)[19] | OASIS |
v1 (2003), v1 Compact Syntax (2006), v2 (2008) | ISO/IEC[17] |
RELAX NG는 W3C XML 스키마가 문서 형식 정의(DTD)보다 가지는 대부분의 장점을 제공한다. RELAX NG 언어는 XML로 작성할 수 있지만, DTD와 매우 유사하면서도 더 강력한 명세 기능을 가진 동등한 형식이 있는데, 이를 간결 구문이라고 한다. 도구를 이용하면 기능이나 주석 손실 없이 이러한 형식 간에 쉽게 변환할 수 있다. RELAX NG XML 요소 사이에 지정된 임의의 요소도 간결 형식으로 변환할 수 있다.
RELAX NG는 비결정적 내용 모델을 허용한다. 예를 들어 다음과 같은 시퀀스를 지정할 수 있다.
```xml
```
검증기가 "odd" 패턴과 일치하는 것을 발견하면, 이 패턴이 선택적인 마지막 "odd" 참조인지, 아니면 데이터에 앞을 보지 않고 zeroOrMore 시퀀스의 하나인지 알 수 없다. RELAX NG는 이러한 종류의 명세를 허용하지만, W3C XML 스키마는 모든 시퀀스를 완전히 결정적으로 요구하므로 위와 같은 메커니즘은 다른 방식으로 지정하거나 완전히 생략해야 한다.
RELAX NG의 명세는 두 개의 내장 유형(문자열 및 토큰)만 나열하지만, 훨씬 더 많은 유형을 정의할 수 있다. 이론적으로, 특정 목록이 없으면 프로세서가 문제 도메인에 매우 특정한 데이터 유형을 지원할 수 있다.
대부분의 RELAX NG 스키마는 알고리즘적으로 W3C XML 스키마 및 DTD로 변환할 수 있다(해당 언어에서 지원하지 않는 RELAX NG 기능을 사용하는 경우 제외). 그 반대는 사실이 아니다. 따라서 RELAX NG는 스키마의 규범적 버전으로 사용할 수 있으며, 사용자는 RELAX NG를 지원하지 않는 도구를 위해 다른 형식으로 변환할 수 있다.
3. 3. 1. W3C XML 스키마 대비 장점
RELAX NG는 XML로 작성할 수 있으며, DTD와 매우 유사하면서도 더 강력한 명세 기능을 가진다. 순서가 없는 내용에 대해 매우 강력한 지원을 제공하는데, 이는 스키마가 패턴 시퀀스가 어떤 순서로든 나타날 수 있다고 명시할 수 있음을 의미한다.RELAX NG는 속성을 내용 모델의 요소로 처리할 수 있다. 특히, "some_element" 요소가 "has_name"이라는 속성을 가져야 함을 명시할 수 있다. 이 속성은 true 또는 false 값만 가질 수 있으며, true인 경우 요소의 첫 번째 자식 요소는 텍스트를 저장하는 "name"이어야 한다. W3C XML 스키마는 속성 내용과 자식 요소 간의 이러한 종속성을 명시할 수 없다.
3. 3. 2. 단점
RELAX NG의 대부분의 단점은 W3C XML 스키마가 RELAX NG에 비해 갖는 장점에 대한 섹션에서 다루어진다.[1]RELAX NG가 사용자 정의 데이터 형식을 지원하는 기능은 유용하지만 사용자가 의존할 수 있는 데이터 형식이 두 개뿐이라는 단점이 있다.[1] 이론적으로는 여러 유효성 검사기에서 RELAX NG 스키마를 사용하려면 해당 사용자 정의 데이터 형식을 해당 유효성 검사기에 제공하거나 두 가지 기본 형식만 사용해야 한다.[1] 그러나 실제로는 대부분의 RELAX NG 프로세서가 W3C XML 스키마의 데이터 형식 집합을 지원한다.[1]
3. 4. Schematron
Schematron은 XPath 기반 규칙 목록으로 XML 파일의 구문을 정의하는 규칙 기반 스키마 언어이다.[17] 문서는 이러한 규칙을 통과해야 유효한 것으로 간주된다.특징 | 내용 |
---|---|
규칙 기반 | XPath를 사용하여 XML 문서의 유효성을 검사하는 규칙을 정의한다. |
강력한 제약 조건 | 요소 간의 복잡한 관계 및 제약 조건을 표현할 수 있다. |
다른 스키마 언어와 결합 | RELAX NG, W3C XML 스키마 등 다른 스키마 언어와 함께 사용하여 기본 구조 정의의 약점을 보완한다. |
3. 4. 1. 장점
규칙 기반 특성으로 인해, 스케마트론의 명세는 매우 강력하다. 요소의 내용이 형제 요소 중 하나에 의해 제어되도록 요구할 수 있다. 또한 루트 요소가 어떤 요소이든 관계없이 특정 속성을 갖도록 요청하거나 요구할 수 있다. 심지어 여러 XML 파일 간의 필수 관계를 지정할 수도 있다.3. 4. 2. 단점
Schematron은 관계형 구조에 강점을 보이지만, 문서의 기본 구조(어떤 요소가 어디에 올 수 있는지)를 지정하는 능력은 매우 장황한 스키마를 생성하게 된다.[1]이 문제를 해결하는 일반적인 방법은 Schematron을 RELAX NG 또는 W3C XML 스키마와 결합하는 것이다.[1] 여러 스키마 프로세서가 이 결합된 형태를 지원한다.[1] 이를 통해 Schematron 규칙은 W3C XML 스키마 또는 RELAX NG에 의해 정의된 구조에 대한 추가적인 제약 조건을 지정할 수 있다.[1]
3. 4. 3. 도구 지원
Schematron의 레퍼런스 구현은 실제 Schematron 문서를 XML 파일을 검증하는 XSLT로 변환하는 XSLT 변환이다.[1] 따라서 Schematron의 잠재적인 도구는 모든 XSLT 프로세서가 될 수 있지만, libxml2는 XSLT가 필요하지 않은 구현을 제공한다.[1] 썬 마이크로시스템즈의 자바용 Multiple Schema Validator에는 내장된 Schematron 규칙이 있는 RELAX NG 스키마를 검증할 수 있는 애드온이 있다.[1]3. 5. 네임스페이스 라우팅 언어 (NRL)
네임스페이스 라우팅 언어(NRL)는 스키마 언어가 아니다. NRL의 유일한 목적은 문서의 일부를 발견된 요소의 네임스페이스에 따라 개별 스키마로 안내하는 것이다. NRL은 각각에 해당하는 XML 네임스페이스 목록과 스키마에 대한 경로로 구성된다. 이를 통해 각 스키마는 자체 언어 정의에만 관여할 수 있으며, NRL 파일은 해당 요소의 네임스페이스를 기반으로 스키마 검사기를 올바른 스키마 파일로 라우팅한다.이 XML 형식은 스키마 언어에 구애받지 않으며 거의 모든 스키마 언어에 적용된다.[16]
4. 스키마 작성 시 고려 사항
스키마 정의는 문서의 구조와 의미 체계에 중점을 둔다. 하지만 스키마 설계는 데이터베이스, 컴퓨터 프로그램, 기타 형식 구문 설계와 마찬가지로 스타일, 관례, 가독성 등 많은 것을 고려해야 한다. 스키마 설계 문제는 Maler (1995)[10] 및 DeRose (1997)[11]에서 광범위하게 논의된다.
스키마 작성 시 고려해야 할 주요 사항은 다음과 같다:
- 일관성: 태그 및 속성 이름은 일관된 규칙을 따라야 한다.
- 명확하고 기억하기 쉬운 이름: 이름을 잘 선택하면 스키마를 이해하는 데 도움이 된다.
- 태그 대 속성 선택: 정보의 특성에 따라 적절한 표현 방식을 선택해야 한다.
- 텍스트 내용: 텍스트 내용 처리 방식을 결정해야 한다.
- 스키마 재사용: 기존 스키마를 재사용할 수 있는지 고려해야 한다.
- 의미론적 대 구문론적: 스키마 언어가 의미론적 구조와 데이터 형식을 표현하는 데 한계가 있음을 인지해야 한다.
4. 1. 일관성
태그와 속성 이름은 일관된 규칙을 사용해야 한다. 예를 들어, 일부 요소 이름은 camelCase를 사용하지만 다른 요소 이름은 밑줄을 사용하여 이름의 일부를 구분하거나 다른 규칙을 사용하는 스키마를 만드는 것은 드문 일이다.[10] [11]4. 2. 명확하고 기억하기 쉬운 이름
다른 형식 언어와 마찬가지로 이름 자체에는 형식적인 의미가 없더라도 이름을 잘 선택하면 이해에 도움이 될 수 있다. 적절한 태그 이름을 "tag37" 대신 "chapter"로 지정하면 읽는 사람에게 도움이 된다. 동시에 이는 자연어 선택의 문제를 야기한다. 아일랜드 게일어 문서에 사용될 스키마는 편집자와 독자에게 공통적인 언어이므로 요소와 속성 이름에 동일한 언어를 사용할 것이다.[10][11]4. 3. 태그 대 속성 선택
일부 정보는 요소 또는 속성에 쉽게 "맞출" 수 있다. 속성은 XML에서 요소를 포함할 수 없으므로, 이 질문은 XML이 인식해야 하는 추가 하위 구조가 없는 구성 요소에 대해서만 발생한다 (속성은 여러 토큰, 예를 들어 여러 IDREF 값을 지원하며, 이는 약간의 예외로 간주될 수 있다). 속성은 일반적으로 속성이 있는 요소 전체와 관련된 정보를 나타내는 반면, 하위 요소는 자체적인 새로운 범위를 도입한다.[10][11]4. 4. 텍스트 내용
일부 XML 스키마, 특히 다양한 종류의 문서를 나타내는 스키마는 모든 "텍스트 내용"(대략, 문서를 소리내어 읽을 경우 말할 부분)이 텍스트로 발생하고 속성에는 발생하지 않도록 한다. 그러나 이러한 내용이 적용되지 않는 많은 예외적인 경우가 있다. 첫째, 텔레메트리, 벡터 그래픽 또는 수학 공식 생성 등과 같이 "자연어"를 전혀 또는 최소한으로 포함하지 않는 XML 문서가 있다. 둘째, 연극의 연출 지시, 고전 및 성경 작품의 구절 번호, 필사본의 철자 수정 또는 정규화와 같은 정보는 모두 해당 장르의 스키마 설계자가 고려해야 하는 해석 문제를 제기한다.[10][11]4. 5. 스키마 재사용
새로운 ''XML 스키마''는 처음부터 개발하거나 다른 ''XML 스키마''의 일부 조각을 재사용할 수 있다. 모든 스키마 언어는 일부 도구(예: 네임스페이스에 대한 `include` 및 모듈화 제어)를 제공하며 실용적인 경우 재사용을 권장한다.[10][11] 광범위하고 정교한 텍스트 인코딩 이니셔티브 스키마의 다양한 부분도 매우 다양한 다른 스키마에서 재사용된다.4. 6. 의미론적 대 구문론적
RDF 관련 스키마를 제외하고, 어떤 ''스키마 언어''도 형식적으로 의미론적 구조와 데이터 형식을 표현하지 않는다. 이상적이긴 하지만 RDF 가정을 포함하는 것은 매우 부적절하며 ''스키마 개발'' 프레임워크에서 권장하지 않는다.5. 용어
"Schema"(대문자) 표기와 소문자 표기 사용 시기에 대한 혼동이 있다. 소문자 형태는 일반적인 용어이며 DTD, XML 스키마(XSD), RELAX NG 등을 포함한 모든 유형의 스키마를 지칭할 수 있으며, 문장의 시작 부분에 나타나는 경우를 제외하고는 항상 소문자로 표기해야 한다. XML 커뮤니티에서 일반적으로 사용되는 "Schema"(대문자) 형태는 항상 W3C XML 스키마를 지칭한다.
참조
[1]
웹사이트
CLiX Language Specification Version 1.0
http://www.clixml.in[...]
2004-01-31
[2]
웹사이트
Document Content Description for XML: Submission to the World Wide Web Consortium
http://www.w3.org/TR[...]
World Wide Web Consortium
1998-07-31
[3]
웹사이트
Standards and projects under the direct responsibility of ISO/IEC JTC 1/SC 34 Secretariat
http://www.iso.org/i[...]
[4]
웹사이트
Namespace Routing Language (NRL)
http://thaiopensourc[...]
Thai Open Source Software Center, Ltd.
2003-06-13
[5]
웹사이트
Freely Available Standards
http://standards.iso[...]
ISO
[6]
웹사이트
RELAX NG Specification
https://www.oasis-op[...]
2001-12-03
[7]
웹사이트
RELAX NG Compact Syntax
https://www.oasis-op[...]
2002-11-21
[8]
문서
[9]
웹사이트
RELAX NG and W3C XML Schema
http://www.imc.org/i[...]
[10]
서적
Developing SGML DTDs: From Text to Model to Markup
Prentice Hall PTR
[11]
서적
The SGML FAQ Book: Understanding the Foundation of HTML and XML
Kluwer Academic Publishers
[12]
GraphQL
[13]
웹인용
CLiX Language Specification Version 1.0
http://www.clixml.in[...]
2004-01-31
[14]
웹인용
Document Content Description for XML: Submission to the World Wide Web Consortium
http://www.w3.org/TR[...]
World Wide Web Consortium
1998-07-31
[15]
웹인용
Standards and projects under the direct responsibility of ISO/IEC JTC 1/SC 34 Secretariat
http://www.iso.org/i[...]
[16]
웹인용
Namespace Routing Language (NRL)
http://thaiopensourc[...]
Thai Open Source Software Center, Ltd.
2003-06-13
[17]
웹인용
Freely Available Standards
http://standards.iso[...]
ISO
[18]
웹인용
RELAX NG Specification
https://www.oasis-op[...]
2001-12-03
[19]
웹인용
RELAX NG Compact Syntax
https://www.oasis-op[...]
2002-11-21
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com